# # 练习题：创建一个包含1到10的整数的列表。   列表推导式
# # list1=[]
# # for  a in range(1,11):
# #     list1.append(a)
# #
# # n=1
# # while n<=10:
# #     list1.append(n)
# #     n+=1
#
#
#
# # 练习题：编写一个程序，将列表中的每个元素乘以2，并输出结果。列表：[1, 2, 3, 4, 5]
# # list1=[1,2,2,3,4]
# # for a in list1:
# #     print(a*2,end=" ")
#
# # 练习题：编写一个程序，将两个列表合并为一个列表，并去除重复元素。列表1：[1, 2, 3] 列表2：[2, 3, 4]
# # 面试题,如何对列表去重?
# list1=[1, 2, 3]
# list2=[2, 3, 4]
# # list1.extend(list2) # 会改变list1的元素的个数
# list3=list1 + list2  #做拼接  返回一个新的列表
# list4=[]
# for a in list3:
#     if a not in list4:
#         list4.append(a)
# # 答案1: 创建一个新的列表, 然后使用循环,判断元素是否在列表中,如果不在,就追加到新列表中
#
# #  in   判断元素是否在容器中 相等于sql全模糊  %z%
# # not in       not like    id in(1,2)   id=1 or id=2
#
#
# # 练习题：编写一个程序，计算列表中所有偶数的和。列表：[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# list1=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# sum1=0
# for e in list1:
#     if e%2==0:
#       sum1+=e
#
#
#
# # 练习题：编写一个程序，找出列表中的最大值和最小值。列表：[10, 20, 433, 40, 50,34,2,1]
# list1=[10, 20, 433, 40, 50,34,2,1]
# list1.sort()
# print(list1[0],list1[-1])
#
# # while list:
# print(max(list),min(list))

# 练习题：编写一个程序，计算列表中元素的平均值。列表：[1, 2, 3, 4, 5]
# li=[1, 2, 3, 4, 5]
# # 求和
# sum1=0
# for e in li:
#     sum1+=e
# # 求平均值  需要使用len(列表名)
# print(sum1/len(li))




# print(sum(li)/len(li))
# 练习题：编写一个程序，判断列表中是否存在某个元素。列表：[1, 2, 3, 4, 5]，判断元素：3 是否存在。
# li=[1, 2, 3, 4, 5]
# if 3 in li:
#     print("存在")
# else:
#     print("不存在")
# a=[1,2,3,4,5]
# for b in a:
#     if b==3:
#         print("存在")
# 练习题：编写一个程序，将列表中的所有偶数替换为它们的平方。列表：[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
lint1=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
n=0  #索引
while n<len(lint1):
    print(lint1[n])
    n+=1



# for a in lint1:
#     if a%2==0:
#         a=a**2
#         print(a)
for i, e in enumerate(lint1):
    if e%2==0:
        lint1[i]=e**2
print(lint1)

# 4.从1到500所有自然数中不含数字4的自然数共有多少个？
# 5.1+2-3+4-5+6-7....+100的结果
# for e in range(1,100)
# 6.编写一个程序，求出200到300之间的数，且满足条件：它们三个数字之积为42，三个数字之和为12。
# 7.任意输入一个整数（小于10位），求这个整数有多少位  （不能使用len()方法）
# 8.有一个两位数，如果在它的前面添一个3，可得到一个三位数；把3添在它的后面，也可以得到一个三位数。这两个三位数相差468，求原来的两位数。
# 9.在控制台打印0~100之间不以5结尾的数
# 10.打印出1000以内所有的"水仙花数"，所谓"水仙花数"是指一个三位数，其各位数字立方和等于该数本身。
# 例如：153 是一个"水仙花数"，因为 153=1 的三次方＋5 的三次方＋3 的三次方
for i in range(100,1000):
    a=i//100%10
    b=i//10%10
    c=i%10
    if i==(a**3+b**3+c**3):
        print(f'{i}是水仙花数')

# 11.求18-28+38-48+......+978-988的值


# 12.在控制台打印0~100，但不包含以5结尾和以8结尾的数
# for i in range(101):
#     if i%10!=5 and i%10!=8:
#         print(i)


# 13.输入一个正整数，将该数的各位左右反转输出，即输入123，输出321。
# 14.输出1~1000之间以8结尾且能被3整除的数有多少个
# 1.打印1~100所有的数
# 2.打印1~100所有的偶数
# 3.打印1~100所有数的和
# 4.打印1~20所有数的乘积
# 5.打印1~30所有数的平方的和
# 6.打印1~50所有奇数的和
# 7.打印1~20所有奇数的乘积
# 8.打印1~40所有奇数的平方的和
# 9.打印200~300所有数的和
# 10.打印 1-100之内小于等于30 和 大于等于 70的所有数
# 编写一个程序，使用循环打印出1到50之间所有的5的倍数，直到遇到第一个偶数位置
# 编写一个程序，使用循环打印出1到100之间所有的7的倍数的成绩
